home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Special 13 / AMIGAplus Sonderheft 13 (1998)(ICP)(DE)[!].iso / rexx / saveblk.bed < prev    next >
Text File  |  1997-12-03  |  860b  |  56 lines

  1. /*
  2. ** $VER: SaveBlk.bed 1.0 (03.01.96)
  3. **
  4. ** Save the currently selected block to a file on disk.
  5. **
  6. ** Modified by Marco Negri
  7. */
  8.  
  9. OPTIONS RESULTS
  10. OPTIONS FAILAT 21
  11. PARSE ARG name
  12.  
  13. GetBlkInfo
  14. PARSE VAR RESULT mode . sel_y sel_x
  15.  
  16. IF mode = "OFF" THEN DO
  17.     SetStatusBar "No block selected!"
  18. END; ELSE DO
  19.  
  20.     SetDisplayLock ON
  21.     SetInputLock ON
  22.  
  23.     IF name = "" THEN DO
  24.         GetFilePath PATH
  25.         RequestFile SAVEMODE 'TITLE "Save Selected Block"' RESULT
  26.         IF RC ~= 0 THEN EXIT
  27.         name = RESULT
  28.     END
  29.  
  30.     GetCursorPos
  31.     PARSE VAR RESULT y x .
  32.  
  33.     TaskID = Pragma('ID')
  34.  
  35.     SaveClip QUIET NOICON NOBACKUP 'T:OldClip' || TaskID
  36.  
  37.     CopyBlk
  38.     SaveClip name
  39.  
  40.     OpenClip 'T:OldClip' || TaskID
  41.  
  42.     Move sel_y sel_x
  43.     MarkBlk
  44.  
  45.     Move y x
  46.  
  47.     SetDisplayLock OFF
  48.     SetInputLock OFF
  49. END
  50.  
  51. IF ~Show(L,'rexxsupport.library') THEN DO
  52.     AddLib('rexxsupport.library',0,-30)
  53. END;
  54.  
  55. Delete("T:OldClip-" || TaskID)
  56.